Дорогие друзья!!!
Мы благодарим Вас за то, что Вы решили использовать наш скрипт для своего сайта.
Описание:
VIP Serials 1.3 - модуль, который позволяет генерировать персональные 25-ти значные ключи. У каждого ключа есть 2 свойства: группа и срок годности. Пользователь, введя такой ключ у себя в профиле, автоматически переносится в определенную группу на определенный срок (в зависимости от ключа). По истечению срока годности ключа, пользователь автоматически переносится обратно в "Пользователи". При вводе 2-х не активированных ключей, сроки годности суммируются.
Автор модуля будет
Вам очень признателен, если Вы его поддержите, перечислив любую сумму на WebMoney:
R793523719476
Z627500942035
E165814272904
Список изменений относительно версии 1.1
-
В действиях над таблицей созданных ключей, появились 3 новые функции: Удалить активные, Удалить неактивные, Удалить ожидающие.
Удалить активные - удаление только активированных ключей.
Удалить неактивные - удаление только не активированных ключей.
Удалить ожидающие - удаление ключей, возможность активации которых, еще не наступила. -
В таблицу созданных ключей, добавлены 2 колонки: Дата старта и В группе до.
-
В форме генерации ключей появилось новое поле – «Годен c». В этом поле можно указать начальную дату действия ключа. Активация ключа пользователем до указанной даты будет невозможна. Благодаря этой функции, появилась возможность указания срока действия ключа в определенном промежутке времени.
-
Частично изменен вид форм заполнения.
-
Несколько изменен алгоритм генерации ключей.
-
Исправлена куча багов и ошибок.
1. Установка скрипта на сервер
- Для начала скопируйте все файлы из папки upload в данном архиве на ваш сервер.
-
Открыть файл admin.php
После:
'blockip' => 'admin',
Добавить:
'vipserials' => 'admin', -
Открыть файл profile.php
После:
include_once ENGINE_DIR.'/classes/parse.class.php';
Добавить:
require_once (ENGINE_DIR . '/modules/vip.php'); -
Открыть файл userinfo.tpl и в нужном месте вставить:
[not-logged]
<p style="margin-top: 0; margin-bottom: 0"> <p style="margin-top: 0; margin-bottom: 0">
<font color="#008000"><b>Чтобы получить V.I.P статус введите ключ:</b></font><p style="margin-top: 0; margin-bottom: 0">
<br>
<input onFocus="this.style.background='#e0f7bd'" onBlur="this.style.background='#ffffff'" type="text" name="serial" class="edit" size="33"" />
<p style="margin-top: 0; margin-bottom: 0">
{serial_info}<p style="margin-top: 0; margin-bottom: 0">
<p style="margin-top: 0; margin-bottom: 0">
<input type="submit" name="activate" class="bbcodes_poll" value="Проверить ключ" /><p style="margin-top: 0; margin-bottom: 0"> <p style="margin-top: 0; margin-bottom: 0"> [/not-logged] -
Открыть файл adminpanel.lng
После:
'func_msg' => "Вернуться назад",
Добавить:
//VIP
//1.3
'select_action_vip' => "Выберите действие: ",
'clear_log_vip' => "Очистка лога V.I.P",
'advanced_vip' => "Настройки V.I.P",
'advanc_zone_vip' => "Настройки VIP зоны",
'best_before_best_by' => "Дата окончания срока годности ключа, не может быть меньше даты начала действия ключа!",
'best_by_best_before' => "Дата начала действия ключа, не может быть больше даты окончания срока годности ключа!",
'sorry_locking' => "Ключи либо находятся в статусе ожидания, либо уже активированы!",
'title_error' => "Ошибка",
'title_info' => "Информация",
'hint_table_action' => "Вы можете выбрать одно из действий:<br> <b>Удалить</b> - удаление ключа, <br><b>Удалить активные</b> - удаление только активированных ключей, <br><b>Удалить неактивные</b> - удаление только не активированных ключей, <br><b>Удалить ожидающие</b> - удаление ключей, возможность активации которых, еще не наступила, <br><b>Активировать</b> - активация не активированного ключа (аннулирование), <br><b>Деактивировать</b> - снятие активации с активированного ключа.",
'hint_table_clean' => "Эта функция позволяет очистить из базы только <b>активированные</b> ключи.",
'table_stat_count' => "Всего ключей в базе:",
'wrong_date_vip' => "Неверный формат даты!",
'wrong_day_key_null' => "Количество ключей/дней не может быть = 0!",
'not_enter_day_key' => "Не введено количество ключей/дней!",
'keys_add_to_base' => "Активационные ключи были созданы и внесены в базу.",
'clean_key_active' => "Активированные ключи были успешно очищены",
'clean_key_deactive' => "Не активированные ключи были успешно очищены",
'clean_key_wait' => "Ожидающие ключи были успешно очищены",
'isset_wrong_act_key' => "Невозможно выполнить операцию! Возможно, в базе нет активированных ключей",
'operatin_ok_vip' => "Успешная операция",
'operatin_falied_vip' => "Провал операции",
'key_deleted_vip' => "Ключи успешно удалены",
'not_select_keys' => "Невозможно выполнить операцию! Необходимо выбрать хотя бы один ключ",
'key_blocking_vip' => "Ключи успешно активированы",
'key_unblocking_vip' => "Ключи успешно деактивированы",
'hint_on_best_by' => "В этом поле можно указать начальную дату действия ключа.<br>Активация ключа пользователем до указанной даты будет невозможна.<br><b>Опция без учета времени.</b>",
'hint_on_best_before' => "В этом поле можно указать конечную дату действия ключа.<br>Если еще указана и начальная дата действия ключа, то вычисляется количество дней между этими датами.<br><i>Примечание: </i>введенное количество дней игнорируется<br><b>Опция без учета времени.</b>",
//1.3
//1.1
'opt_s_vip' => " Управление зоной V.I.P. Создание, редактирование, управление ключами.",
'opt_b_vip' => " V.I.P Serials 1.1",
'main_vip_table' => "Список созданных ключей",
'main_vip_gen' => "Форма создания новых VIP ключей",
'main_vip_table_opt' => "Список созданных ключей",
'main_vip_gen_opt' => "Форма создания новых VIP ключей",
'send_email_head_vip' => "Уведомление на e-mail:",
'send_email_body_vip' => "Уведомление на е-mail администратора о новой активации",
'write_file_head_vip' => "Запись в файл:",
'address_head_vip' => "Email администратора:",
'address_body_vip' => "Укажите e-mail на который будут отсылаться уведомления об активациях",
'clean_log_vip' => "Лог успешно очищен",
'log_head_vip' => "Смена имени файла:",
'log_body_vip' => "Настоятельно рекомендуется сменить имя файла в целях безопасности",
'send_pm_head_vip' => "Уведомление в ПМ:",
'send_pm_body_vip' => "Уведомление персональным сообщением администратору (+ 2 запроса к MySQL)",
'pm_head_vip' => "Заголовок ПМ:",
'pm_body_vip' => "Укажите заголовок с которым Вам будут приходить Уведомления",
'admin_id_head_vip' => "ID администратора:",
'admin_id_body_vip' => "Укажите уникальный номер пользователя, которому будет приходить ПМ с уведомлением",
'status_read_head_vip' => "Статус сообщения:",
'status_read_body_vip' => "Если указано <b>\"Прочтено\"</b>, то на главной странице не будет выскакивать окошко с сообщением о новом ПМ (не рекомендуется)",
'status_read_drop_vip' => "Прочтено",
'status_noread_drop_vip'=> "Не прочтено",
'user_from_head_vip' => "Имя отправителя ПМ:",
'user_from_body_vip' => "Укажите nickname пользователя, от которого будут именоваться ПМ сообщения (можно указать свой ник)",
'main_adm_pm_vip' => "Настройка отправки ПМ",
'main_adm_email_vip' => "Настройка отправки E-mail",
'main_adm_advansed_vip' => "Остальные настройки",
'head_general_main_vip' => "Настройка параметров модуля (используйте навигацию для доступа к разделам)",
'email_head_vip' => "Заголовок E-mail:",
'email_body_vip' => "Укажите заголовок, с которым Вам будут e-mail уведомления)",
'charset_head' => "Используемая кодировка E-mail:",
'charset_body' => "Укажите кодировку, которую использует ваш E-mail. (Если вы не знаете - оставьте текущее значение)",
'content_type_head' => "Тип содержимого письма:",
'content_type_body' => "Укажите тип содержания письма:<b> plane</b>,<b> html.</b> (Если вы не знаете - оставьте текущее значение)",
'maim_pm_option' => "Настройка ПМ",
'maim_email_option' => "Настройка E-mail",
'maim_pm_advanced' => "Остальные настройки",
'separator_head' => "Разделитель:",
'separator_body' => "Вы можете указать разделитель, который будет использоваться при ведении лога:",
//1.1 -
Открыть файл options.php
После:
$options['user'] = array(
Добавить:
array(
'name' => $lang['opt_b_vip'],
'url' => "$PHP_SELF?mod=vipserials",
'descr' => $lang['opt_s_vip'],
'image' => "main_vip.png",
'access' => "1",
), -
Запустить файл install.php
2. Обновление скрипта
- Для начала замените все файлы из папки upload на вашем серверк.
-
Открыть файл userinfo.tpl и в нужном месте вставить:
Найти:
[not-logged]
<p style="margin-top: 0; margin-bottom: 0">
<b>
<font color="#008000">Чтобы получить V.I.P статус введите ключ:</b></font><p style="margin-top: 0; margin-bottom: 0">
<br>
<input type="text" name="serial" class="edit" size="40"" />
{serial_info}<p style="margin-top: 0; margin-bottom: 0">
<p style="margin-top: 0; margin-bottom: 0">
<input type="submit" name="activate" class="bbcodes_poll" value="Проверить ключ" /><p style="margin-top: 0; margin-bottom: 0"> <p style="margin-top: 0; margin-bottom: 0"> [/not-logged]
Заменить на:
[not-logged]
<p style="margin-top: 0; margin-bottom: 0"> <p style="margin-top: 0; margin-bottom: 0">
<font color="#008000"><b>Чтобы получить V.I.P статус введите ключ:</b></font><p style="margin-top: 0; margin-bottom: 0">
<br>
<input onFocus="this.style.background='#e0f7bd'" onBlur="this.style.background='#ffffff'" type="text" name="serial" class="edit" size="33"" />
<p style="margin-top: 0; margin-bottom: 0">
{serial_info}<p style="margin-top: 0; margin-bottom: 0">
<p style="margin-top: 0; margin-bottom: 0">
<input type="submit" name="activate" class="bbcodes_poll" value="Проверить ключ" /><p style="margin-top: 0; margin-bottom: 0"> <p style="margin-top: 0; margin-bottom: 0"> [/not-logged] -
Открыть файл adminpanel.lng
Найти:
//VIP
'hint_on_this_day' => "Опция с учетом времени. Если дата указана до 12:00, то текущий день будет добавлен в общее количество дней. Например: сейчас 2000-01-01 (11:00), указано 2000-01-05, результат будет 6 дней.",
'opt_s_vip' => " Управление зоной V.I.P. Создание, редактирование, управление ключами.",
'opt_b_vip' => " V.I.P Serials 1.1",
'main_vip_table' => "Список созданных ключей",
'main_vip_gen' => "Форма создания новых VIP ключей",
'main_vip_table_opt' => "Список созданных ключей",
'main_vip_gen_opt' => "Форма создания новых VIP ключей",
'send_email_head_vip' => "Уведомление на e-mail:",
'send_email_body_vip' => "Уведомление на е-mail администратора о новой активации",
'write_file_head_vip' => "Запись в файл:",
'address_head_vip' => "Email администратора:",
'address_body_vip' => "Укажите e-mail на который будут отсылаться уведомления об активациях",
'clean_log_vip' => "Лог успешно очищен",
'log_head_vip' => "Смена имени файла:",
'log_body_vip' => "Настоятельно рекомендуется сменить имя файла в целях безопасности",
'send_pm_head_vip' => "Уведомление в ПС:",
'send_pm_body_vip' => "Уведомление персональным сообщением администратору (+ 2 запроса к MySQL)",
'pm_head_vip' => "Заголовок ПС:",
'pm_body_vip' => "Укажите заголовок с которым Вам будут приходить Уведомления",
'admin_id_head_vip' => "ID администратора:",
'admin_id_body_vip' => "Укажите уникальный номер пользователя, которому будет приходить ПМ с уведомлением",
'status_read_head_vip' => "Статус сообщения:",
'status_read_body_vip' => "Если указано <b>\"Прочтено\"</b>, то на главной странице не будет выскакивать окошко с сообщением о новом ПМ (не рекомендуется)",
'status_read_drop_vip' => "Прочтено",
'status_noread_drop_vip'=> "Не прочтено",
'user_from_head_vip' => "Имя отправителя ПМ:",
'user_from_body_vip' => "Укажите nickname пользователя, от которого будут именоваться ПМ сообщения (можно указать свой ник)",
'main_adm_pm_vip' => "Настройка отправки ПМ",
'main_adm_email_vip' => "Настройка отправки E-mail",
'main_adm_advansed_vip' => "Остальные настройки",
'head_general_main_vip' => "Настройка параметров модуля (используйте навигацию для доступа к разделам)",
'email_head_vip' => "Заголовок E-mail:",
'email_body_vip' => "Укажите заголовок, с которым Вам будут e-mail уведомления",
'charset_head' => "Используемая кодировка E-mail:",
'charset_body' => "Укажите кодировку, которую использует ваш E-mail. (Если вы не знаете - оставьте текущее значение)",
'content_type_head' => "Тип содержимого письма:",
'content_type_body' => "Укажите тип содержания письма:<b> plane</b>,<b> html.</b> (Если вы не знаете - оставьте текущее значение)",
'maim_pm_option' => "Настройка ПМ",
'maim_email_option' => "Настройка E-mail",
'maim_pm_advanced' => "Остальные настройки",
'separator_head' => "Разделитель:",
'separator_body' => "Вы можете указать разделитель, который будет использоваться при ведении лога:",
Заменить на:
//VIP
//1.3
'select_action_vip' => "Выберите действие: ",
'clear_log_vip' => "Очистка лога V.I.P",
'advanced_vip' => "Настройки V.I.P",
'advanc_zone_vip' => "Настройки VIP зоны",
'best_before_best_by' => "Дата окончания срока годности ключа, не может быть меньше даты начала действия ключа!",
'best_by_best_before' => "Дата начала действия ключа, не может быть больше даты окончания срока годности ключа!",
'sorry_locking' => "Ключи либо находятся в статусе ожидания, либо уже активированы!",
'title_error' => "Ошибка",
'title_info' => "Информация",
'hint_table_action' => "Вы можете выбрать одно из действий:<br> <b>Удалить</b> - удаление ключа, <br><b>Удалить активные</b> - удаление только активированных ключей, <br><b>Удалить неактивные</b> - удаление только не активированных ключей, <br><b>Удалить ожидающие</b> - удаление ключей, возможность активации которых, еще не наступила, <br><b>Активировать</b> - активация не активированного ключа (аннулирование), <br><b>Деактивировать</b> - снятие активации с активированного ключа.",
'hint_table_clean' => "Эта функция позволяет очистить из базы только <b>активированные</b> ключи.",
'table_stat_count' => "Всего ключей в базе:",
'wrong_date_vip' => "Неверный формат даты!",
'wrong_day_key_null' => "Количество ключей/дней не может быть = 0!",
'not_enter_day_key' => "Не введено количество ключей/дней!",
'keys_add_to_base' => "Активационные ключи были созданы и внесены в базу.",
'clean_key_active' => "Активированные ключи были успешно очищены",
'clean_key_deactive' => "Не активированные ключи были успешно очищены",
'clean_key_wait' => "Ожидающие ключи были успешно очищены",
'isset_wrong_act_key' => "Невозможно выполнить операцию! Возможно, в базе нет активированных ключей",
'operatin_ok_vip' => "Успешная операция",
'operatin_falied_vip' => "Провал операции",
'key_deleted_vip' => "Ключи успешно удалены",
'not_select_keys' => "Невозможно выполнить операцию! Необходимо выбрать хотя бы один ключ",
'key_blocking_vip' => "Ключи успешно активированы",
'key_unblocking_vip' => "Ключи успешно деактивированы",
'hint_on_best_by' => "В этом поле можно указать начальную дату действия ключа.<br>Активация ключа пользователем до указанной даты будет невозможна.<br><b>Опция без учета времени.</b>",
'hint_on_best_before' => "В этом поле можно указать конечную дату действия ключа.<br>Если еще указана и начальная дата действия ключа, то вычисляется количество дней между этими датами.<br><i>Примечание: </i>введенное количество дней игнорируется<br><b>Опция без учета времени.</b>",
//1.3
//1.1
'opt_s_vip' => " Управление зоной V.I.P. Создание, редактирование, управление ключами.",
'opt_b_vip' => " V.I.P Serials 1.1",
'main_vip_table' => "Список созданных ключей",
'main_vip_gen' => "Форма создания новых VIP ключей",
'main_vip_table_opt' => "Список созданных ключей",
'main_vip_gen_opt' => "Форма создания новых VIP ключей",
'send_email_head_vip' => "Уведомление на e-mail:",
'send_email_body_vip' => "Уведомление на е-mail администратора о новой активации",
'write_file_head_vip' => "Запись в файл:",
'address_head_vip' => "Email администратора:",
'address_body_vip' => "Укажите e-mail на который будут отсылаться уведомления об активациях",
'clean_log_vip' => "Лог успешно очищен",
'log_head_vip' => "Смена имени файла:",
'log_body_vip' => "Настоятельно рекомендуется сменить имя файла в целях безопасности",
'send_pm_head_vip' => "Уведомление в ПМ:",
'send_pm_body_vip' => "Уведомление персональным сообщением администратору (+ 2 запроса к MySQL)",
'pm_head_vip' => "Заголовок ПМ:",
'pm_body_vip' => "Укажите заголовок с которым Вам будут приходить Уведомления",
'admin_id_head_vip' => "ID администратора:",
'admin_id_body_vip' => "Укажите уникальный номер пользователя, которому будет приходить ПМ с уведомлением",
'status_read_head_vip' => "Статус сообщения:",
'status_read_body_vip' => "Если указано <b>\"Прочтено\"</b>, то на главной странице не будет выскакивать окошко с сообщением о новом ПМ (не рекомендуется)",
'status_read_drop_vip' => "Прочтено",
'status_noread_drop_vip'=> "Не прочтено",
'user_from_head_vip' => "Имя отправителя ПМ:",
'user_from_body_vip' => "Укажите nickname пользователя, от которого будут именоваться ПМ сообщения (можно указать свой ник)",
'main_adm_pm_vip' => "Настройка отправки ПМ",
'main_adm_email_vip' => "Настройка отправки E-mail",
'main_adm_advansed_vip' => "Остальные настройки",
'head_general_main_vip' => "Настройка параметров модуля (используйте навигацию для доступа к разделам)",
'email_head_vip' => "Заголовок E-mail:",
'email_body_vip' => "Укажите заголовок, с которым Вам будут e-mail уведомления)",
'charset_head' => "Используемая кодировка E-mail:",
'charset_body' => "Укажите кодировку, которую использует ваш E-mail. (Если вы не знаете - оставьте текущее значение)",
'content_type_head' => "Тип содержимого письма:",
'content_type_body' => "Укажите тип содержания письма:<b> plane</b>,<b> html.</b> (Если вы не знаете - оставьте текущее значение)",
'maim_pm_option' => "Настройка ПМ",
'maim_email_option' => "Настройка E-mail",
'maim_pm_advanced' => "Остальные настройки",
'separator_head' => "Разделитель:",
'separator_body' => "Вы можете указать разделитель, который будет использоваться при ведении лога:",
//1.1 - Запустить файл install.php
4.1 Выполнить "Начать установку"
4.2 Выполнить "Обновление"
Надеемся что работа с нашим скриптом доставим вам только удовольствие.
Если у вас возникнут вопросы по скрипту, то обращайтесь на
наш сайт.
С уважением,
Alive Systems 2007